Live streaming content, also referred to as broadcast content, includes channels or feeds with scheduled content (e.g., premium movie channels) as well as live broadcasts (e.g., sporting events, news, etc.). Unlike video-on-demand (VOD) content, live content may not have a distinct end point and may continue indefinitely. In addition, VOD content may be buffered or otherwise stored in client devices well in advance of the client playhead (i.e., the content fragment currently being rendered by the client). This is typically not the case for live content because of the fact that the delay between the live playhead (i.e., the latest content fragment available) and the client playhead may be only a few seconds, as well as the fact that the live content is sometimes generated in real time and therefore may not yet exist.
An origin stack is the set of transcoding, digital rights management (DRM), and media processing hardware and software resources that generates encoded content from a live content source for streaming to client devices. Multiple origin stacks for the same content may be provisioned for redundancy and load balancing purposes. If one of the stacks fails, all of the sessions relying on that stack need to connect to streams originating from a different stack. The typically short amount of time between the live and client playheads, and the number of client devices that may be consuming streams originating from a particular origin stack make such failovers technically challenging, and often result in undesirable impacts on the end user experience, e.g., rebuffering events or connection failures.